<script setup lang="ts">
import { LinearDiscriminantAnalysis } from '@/service'
const value = ref()
const { VITE_BACKEND_URL } = import.meta.env
const cbValue = ref()
const cbOption = ref()
const cbPathValues = ref()
const LDAImg = ref()
LDAImg.value = VITE_BACKEND_URL+"/static/LDA.png"
function handleUpdateValue(value: string, option: any, pathValues: any[]) {
  cbValue.value = value
  cbOption.value = { code: option.code, name: option.name }
  cbPathValues.value = pathValues.map(i => ({ code: i.code, name: i.name }))
}

const formRef = ref()
const formValue = ref({
  region: null,
})

async function handleValidateClick() {
  const res = await LinearDiscriminantAnalysis()
  LDAImg.value = VITE_BACKEND_URL+"/static/"+res.data
  console.log(res.data)
}


</script>

<template>
  <n-card title="基于线性判别分析的降维方法">
    可用于执行有监督的降维，方法是将输入数据投影到一个线性子空间，该空间由使类与类之间的分离最大化的方向组成(在下面的数学部分中讨论的准确意义)。输出的维数必然小于类的数量，因此，一般来说，这是一个相当强的降维，并且只有在多类设置中才有意义。
     <div>Iris数据集LDA和PCA二维投影的比较</div>
     Iris数据集代表了3种鸢尾花(Setosa、Versicolour和Virica)的4个属性：萼片长度、萼片宽度、花瓣长度和花瓣宽度。
应用于该数据的主成分分析(PCA)确定了属性(主成分，或特征空间中的方向)的组合，这些属性在数据中的方差最大。在这里，我们绘制了两个第一主成分的不同样本。
线性判别分析(LDA)试图识别类间差异最大的属性。特别是，与PCA相比，LDA是一种监督方法，使用已知的类标签。
      <n-button attr-type="button" @click="handleValidateClick">
          测试
        </n-button>
        <img
 
      :src="LDAImg"
      alt=""
      class="test-img"
    >
  </n-card>
</template>

<style scoped></style>
